package com.pxst.fo.sys.resp;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.xmlbeans.impl.soap.Text;

import java.math.BigDecimal;
import java.util.Date;

@Data
public class FoOrderMainResp {

    @ApiModelProperty(value = "商户编码")
    private String merchantInfo;

    @ApiModelProperty(value = "商户id")
    private Long merchantInfoId;

    @ApiModelProperty(value = "代付id")
    private Long foOrderMainId;

    @ApiModelProperty(value = "参考编号")
    private String reference;

    @ApiModelProperty(value = "状态")
    private Integer status;

    @ApiModelProperty(value = "用户发起金额")
    private BigDecimal requestAmount;

    @ApiModelProperty(value = "实际作用金额")
    private BigDecimal paidAmount;

    @ApiModelProperty(value = "to用户名称")
    private String toMan;

    @ApiModelProperty(value = "to银行")
    private String toBank;

    @ApiModelProperty(value = "to银行账户")
    private String toCardNumber;

    @ApiModelProperty(value = "启用由商户支付银行费")
    private Boolean payBankFee;

    @ApiModelProperty(value = "银行手续费")
    private BigDecimal bankFee;

    @ApiModelProperty(value = "状态明细 1:余额不足,2:无卡")
    private String statusDescription;

    @ApiModelProperty(value = "系统手续费")
    private BigDecimal rate;

    @ApiModelProperty(value = "备注")
    private String note;

    @ApiModelProperty(value = "手动操作状态")
    private Integer action;

    @ApiModelProperty(value = "订单完成时间")
    private Date completedAt;

    @ApiModelProperty(value = "审核账户名称0 预设(不需审核) 1 待财务审核 2 待商户审核 3 拒绝 4 通过")
    private Integer confirmAccname;

    private String altId;

    @ApiModelProperty(value = "异步通知地址")
    private String notifyUrl;

    @ApiModelProperty(value = "审核时间")
    private Date confirmedAt;

    @ApiModelProperty(value = "检查时间(由商户确认)")
    private Date checkedAt;

    @ApiModelProperty(value = "创建时间")
    private Date createdAt;

    @ApiModelProperty(value = "修改时间")
    private Date updatedAt;

    @ApiModelProperty(value = "审核人员")
    private String confirmedMan;

    @ApiModelProperty(value = "检查人员(由商户确认)")
    private String checkedMan;

    @ApiModelProperty(value = "代付费率")
    private BigDecimal foRate;

    @ApiModelProperty(value = "1: 完成, 2: 请求失败, 3: 回应状态码错误, 4: 回应解密失败, 9999: 未知")
    private Integer result;

    @ApiModelProperty(value = "ON100_content")
    private Text content;

    @ApiModelProperty(value = "更新时间")
    private Date nrUpdatedAt;
}
